package cn.com.huzo.model.entities.master;

import huzofw.model.entities.BaseEntity;
import huzofw.model.entities.IAggregateRoot;
import java.io.Serializable;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;

/**
 * 本公司实体类
 *
 * @author 吴旭
 */
public class EnterpriseEntity extends BaseEntity implements Serializable, IAggregateRoot {

    private static final long serialVersionUID = 3225571152274515216L;

    private Long EnterpriseId;
    private String EnterpriseNo;          // 公司编码
    private String EnterpriseName;
    private String ShortName;             // 公司简称   
    private String EnterpriseEnName;      // 英文名
    private String Attn;                  // 联系人  
    private String AttnMobil;
    private String AttnJob;
    private String Fax;
    private String Email;
    private String OpenAccountBank;
    private String BankAccount;
    private String TaxNo;                 // 税务登记号  
    private String Address;
    private String Description;
    // 用于导出excel
    private String FieldsName;
    private String FieldsComment;

    public Long getEnterpriseId() {
        return EnterpriseId;
    }

    public void setEnterpriseId(Long EnterpriseId) {
        this.EnterpriseId = EnterpriseId;
    }

    public String getEnterpriseNo() {
        return EnterpriseNo;
    }

    public void setEnterpriseNo(String EnterpriseNo) {
        this.EnterpriseNo = EnterpriseNo;
    }

    public String getEnterpriseName() {
        return EnterpriseName;
    }

    public void setEnterpriseName(String EnterpriseName) {
        this.EnterpriseName = EnterpriseName;
    }

    public String getShortName() {
        return ShortName;
    }

    public void setShortName(String ShortName) {
        this.ShortName = ShortName;
    }

    public String getEnterpriseEnName() {
        return EnterpriseEnName;
    }

    public void setEnterpriseEnName(String EnterpriseEnName) {
        this.EnterpriseEnName = EnterpriseEnName;
    }

    public String getAttn() {
        return Attn;
    }

    public void setAttn(String Attn) {
        this.Attn = Attn;
    }

    public String getAttnMobil() {
        return AttnMobil;
    }

    public void setAttnMobil(String AttnMobil) {
        this.AttnMobil = AttnMobil;
    }

    public String getAttnJob() {
        return AttnJob;
    }

    public void setAttnJob(String AttnJob) {
        this.AttnJob = AttnJob;
    }

    public String getFax() {
        return Fax;
    }

    public void setFax(String Fax) {
        this.Fax = Fax;
    }

    public String getEmail() {
        return Email;
    }

    public void setEmail(String Email) {
        this.Email = Email;
    }

    public String getOpenAccountBank() {
        return OpenAccountBank;
    }

    public void setOpenAccountBank(String OpenAccountBank) {
        this.OpenAccountBank = OpenAccountBank;
    }

    public String getBankAccount() {
        return BankAccount;
    }

    public void setBankAccount(String BankAccount) {
        this.BankAccount = BankAccount;
    }

    public String getTaxNo() {
        return TaxNo;
    }

    public void setTaxNo(String TaxNo) {
        this.TaxNo = TaxNo;
    }

    public String getAddress() {
        return Address;
    }

    public void setAddress(String Address) {
        this.Address = Address;
    }

    public String getDescription() {
        return Description;
    }

    public void setDescription(String Description) {
        this.Description = Description;
    }

    public String getFieldsName() {
        return FieldsName;
    }

    public void setFieldsName(String FieldsName) {
        this.FieldsName = FieldsName;
    }

    public String getFieldsComment() {
        return FieldsComment;
    }

    public void setFieldsComment(String FieldsComment) {
        this.FieldsComment = FieldsComment;
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof EnterpriseEntity)) {
            return false;
        }

        final EnterpriseEntity that = (EnterpriseEntity) o;

        return new EqualsBuilder()
                .append(this.getEnterpriseId(), that.getEnterpriseId())
                .isEquals();
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public int hashCode() {
        int result = 17;
        result = 31 * result + this.getEnterpriseId().hashCode();

        return result;
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}
